home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Kit PC World De Ampliacion De Windows 95
/
Kit PC World de ampliacion de Windows 95.iso
/
clarion
/
gauge
/
gauge.z
/
CWGAUGE.CLW
< prev
next >
Wrap
Text File
|
1995-10-18
|
11KB
|
335 lines
Gauge PROGRAM
MAP
INCLUDE('DDE.CLW')
MODULE('CWGAUGE1.CLW')
ViewReadMe
END
MODULE('')
GetModuleFileName(UNSIGNED,*CSTRING,SIGNED),SIGNED,NAME('GetModuleFileName'),PASCAL,RAW
GetModuleHandle(*CSTRING),UNSIGNED,PASCAL,RAW
GetModuleUsage(UNSIGNED),UNSIGNED,PASCAL,RAW
GetVersion(),UNSIGNED,PASCAL,RAW
END
ShowSizes
END
Version UNSIGNED
Handle UNSIGNED
ModName CSTRING('CWGAUGE')
EXEPath CSTRING(128)
Executable CSTRING(128)
CWSieve CSTRING('\CWSIEVE.EXE')
CWSieve32 CSTRING('\CWSIEV32.EXE')
CWDialog CSTRING('\CWDIALOG.EXE')
CWDialog32 CSTRING('\CWDIAL32.EXE')
VBSieve CSTRING('\VB\VBSIEVE.EXE')
VBDialog CSTRING('\VB\VBDIALOG.EXE')
PBSieve CSTRING('\PB\PBSIEVE.EXE')
PBDialog CSTRING('\PB\PBDIALOG.EXE')
DSieve CSTRING('\DELPHI\DPSIEVE.EXE')
DDialog CSTRING('\DELPHI\DPDIALOG.EXE')
Button BYTE
Channel LONG
CCycles STRING(12)
VCycles STRING(12)
PCycles STRING(12)
DCycles STRING(12)
ICCompare STRING(20)
IVCompare STRING(20)
IPCompare STRING(20)
IDCompare STRING(20)
CDisplays STRING(12)
VDisplays STRING(12)
PDisplays STRING(12)
DDisplays STRING(12)
WCCompare STRING(20)
WVCompare STRING(20)
WPCompare STRING(20)
WDCompare STRING(20)
ReturnItem STRING(20)
Compare STRING(20)
Ratio DECIMAL(12,3)
I32Bit BYTE
W32Bit BYTE
Window WINDOW('The Clarion for Windows Performance Gauge'),AT(,,318,230),FONT('MS Sans Serif',8,,FONT:bold), |
CENTER,ICON('GAUGE.ICO'),SYSTEM,GRAY
GROUP('Internal Speed'),AT(3,3,313,100),BOXED
STRING('Sieve of Eratosthenes'),AT(128,13)
STRING('Cycles / Minute:'),AT(11,50)
STRING('Comparison:'),AT(11,63)
STRING('Clarion for Windows'),AT(56,28)
CHECK('32 Bit'),AT(73,36),USE(I32Bit)
STRING(@S12),AT(69,50,40,10),USE(CCycles),CENTER
STRING('Delphi'),AT(143,28)
STRING(@S12),AT(133,50,40,10),USE(DCycles),CENTER
STRING(@S20),AT(123,63,60,10),USE(IDCompare),CENTER
STRING('Visual Basic'),AT(197,28)
STRING(@S12),AT(197,50,40,10),USE(VCycles),CENTER
STRING(@S20),AT(187,63,60,10),USE(IVCompare),CENTER
STRING('PowerBuilder'),AT(261,28)
STRING(@S12),AT(262,50,40,10),USE(PCycles),CENTER
STRING(@S20),AT(252,63,60,10),USE(IPCompare),CENTER
END
GROUP('Windows Speed'),AT(3,106,313,100),BOXED
STRING('Display a Dialog Box'),AT(127,116)
CHECK('32 Bit'),AT(73,140),USE(W32Bit)
STRING('Displays / Minute:'),AT(11,153)
STRING('Comparison:'),AT(11,166)
STRING('Clarion for Windows'),AT(57,131)
STRING(@S12),AT(69,153,40,10),USE(CDisplays),CENTER
STRING('Delphi'),AT(143,131),USE(?String25)
STRING(@S12),AT(133,153,40,10),USE(DDisplays),CENTER
STRING(@S20),AT(123,166,60,10),USE(WDCompare),CENTER
STRING('Visual Basic'),AT(197,131)
STRING(@S12),AT(197,153,40,10),USE(VDisplays),CENTER
STRING(@S20),AT(187,166,60,10),USE(WVCompare),CENTER
STRING('PowerBuilder'),AT(261,131)
STRING(@S12),AT(262,153,40,10),USE(PDisplays),CENTER
STRING(@S20),AT(252,166,60,10),USE(WPCompare),CENTER
END
BUTTON('Run'),AT(75,80),USE(?ICRun)
BUTTON('Run'),AT(139,80),USE(?IDRun)
BUTTON('Run'),AT(203,80),USE(?IVRun)
BUTTON('Run'),AT(268,80),USE(?IPRun)
BUTTON('Run'),AT(75,185),USE(?WCRun)
BUTTON('Run'),AT(139,185),USE(?WDRun)
BUTTON('Run'),AT(203,185),USE(?WVRun)
BUTTON('Run'),AT(268,185),USE(?WPRun)
BUTTON('.EXE Size...'),AT(203,212),USE(?ShowSizes)
BUTTON('Read Me...'),AT(58,212),USE(?ReadMe)
BUTTON('Close'),AT(139,212),USE(?Close)
END
CODE
Handle = GetModuleHandle(ModName)
Handle = GetModuleFileName(Handle,EXEPath,127)
EXEPath = SUB(EXEPath,1,INSTRING('.',EXEPath,1)-1)
EXEPath = SUB(EXEPath,1,LEN(CLIP(EXEPath))-8)
OPEN(Window) !Open the window
Version = GetVersion()
IF Version <= 01403h
DISABLE(?I32Bit)
DISABLE(?W32Bit)
END
CCycles = '?'
DCycles = '?'
VCycles = '?'
PCycles = '?'
CDisplays = '?'
DDisplays = '?'
VDisplays = '?'
PDisplays = '?'
IDCompare = '?'
IVCompare = '?'
IPCompare = '?'
WDCompare = '?'
WVCompare = '?'
WPCompare = '?'
SELECT(?ICRun)
Button = 0
ACCEPT !Enable user interface
CASE EVENT() !Process Windows event
OF EVENT:DDEClosed
ReturnItem = CLIP(LEFT(CLIPBOARD()))
ReturnItem = DEFORMAT(ReturnItem)
DO FormatItem
EXECUTE Button
CCycles = ReturnItem
DCycles = ReturnItem
VCycles = ReturnItem
PCycles = ReturnItem
CDisplays = ReturnItem
DDisplays = ReturnItem
VDisplays = ReturnItem
PDisplays = ReturnItem
END
DO ComputeCompares
Button = 0
OF EVENT:Accepted !A field has been accepted
Button = FIELD() - ?ICRun + 1
CASE FIELD() !Process the field
OF ?ICRun !Run the Clarion "Sieve"
IF I32Bit
Executable = CLIP(EXEPath) & CWSieve32
ELSE
Executable = CLIP(EXEPath) & CWSieve
END
RUN(Executable)
Channel = DDECLIENT('CWSIEVE')
DDEEXECUTE(Channel,'[Run]')
OF ?IDRun !Run the Delphi "Sieve"
Executable = CLIP(EXEPath) & DSieve
RUN(Executable)
Channel = DDECLIENT('DPSIEVE','DpSieve')
OF ?IVRun !Run the Visual Basic "Sieve"
Executable = CLIP(EXEPath) & VBSieve
RUN(Executable)
Channel = DDECLIENT('VBSIEVE','SIEVE')
DDEEXECUTE(Channel,'[Run]')
OF ?IPRun !Run the PowerBuilder "Sieve"
Executable = CLIP(EXEPath) & PBSieve
RUN(Executable)
Channel = DDECLIENT('PBSIEVE','SIEVE')
DDEEXECUTE(Channel,'[Run]')
OF ?WCRun !Run the Clarion Dialog box test
IF W32Bit
Executable = CLIP(EXEPath) & CWDialog32
ELSE
Executable = CLIP(EXEPath) & CWDialog
END
RUN(Executable)
Channel = DDECLIENT('CWDIALOG')
DDEEXECUTE(Channel,'[Run]')
OF ?WDRun !Run the Delphi Dialog test
Executable = CLIP(EXEPath) & DDialog
RUN(Executable)
Channel = DDECLIENT('DPDIALOG','DpDialog')
OF ?WVRun !Run the Visual Basic Dialog test
Executable = CLIP(EXEPath) & VBDialog
RUN(Executable)
Channel = DDECLIENT('VBDIALOG','Dialog')
DDEEXECUTE(Channel,'[Run]')
OF ?WPRun
Executable = CLIP(EXEPath) & PBDialog
RUN(Executable)
Channel = DDECLIENT('PBDIALOG','Dialog')
DDEEXECUTE(Channel,'[Run]')
OF ?ShowSizes
ShowSizes
OF ?ReadMe
ViewReadMe
OF ?Close !Close the window
RETURN ! and return to Windows
END
END
END
ComputeCompares ROUTINE
IF CCycles <> '?' AND DCycles <> '?'
Ratio = DEFORMAT(CCycles) / DEFORMAT(DCycles)
DO FormatRatio
IDCompare = Compare
DISPLAY
END
IF CCycles <> '?' AND VCycles <> '?'
Ratio = DEFORMAT(CCycles) / DEFORMAT(VCycles)
DO FormatRatio
IVCompare = Compare
DISPLAY
END
IF CCycles <> '?' AND PCycles <> '?'
Ratio = DEFORMAT(CCycles) / DEFORMAT(PCycles)
DO FormatRatio
IPCompare = Compare
DISPLAY
END
IF CDisplays <> '?' AND DDisplays <> '?'
Ratio = DEFORMAT(CDisplays) / DEFORMAT(DDisplays)
DO FormatRatio
WDCompare = Compare
DISPLAY
END
IF CDisplays <> '?' AND VDisplays <> '?'
Ratio = DEFORMAT(CDisplays) / DEFORMAT(VDisplays)
DO FormatRatio
WVCompare = Compare
DISPLAY
END
IF CDisplays <> '?' AND PDisplays <> '?'
Ratio = DEFORMAT(CDisplays) / DEFORMAT(PDisplays)
DO FormatRatio
WPCompare = Compare
DISPLAY
END
FormatItem ROUTINE
IF ReturnItem < 1000
ReturnItem = FORMAT(ReturnItem,@N5.1)
ELSE
ReturnItem = FORMAT(ReturnItem,@N9.0)
END
ReturnItem = LEFT(ReturnItem)
FormatRatio ROUTINE
IF Ratio < .1
Compare = FORMAT(1/Ratio,@N5) & ' times faster'
ELSIF Ratio < .5
Compare = FORMAT(1/Ratio,@N4.1) & ' times faster'
ELSIF Ratio < 1
Compare = FORMAT((1-Ratio)*100,@P<#P) & ' percent faster'
ELSIF Ratio < 2
Compare = FORMAT((Ratio-1)*100,@P<#P) & ' percent slower'
ELSIF Ratio < 10
Compare = FORMAT(Ratio,@N4.1) & ' times slower'
ELSE
Compare = FORMAT(Ratio,@N5) & ' times slower'
END
Compare = LEFT(Compare)
ShowSizes PROCEDURE
Sizes WINDOW('Distributable File Sizes'),AT(,,275,194),FONT('MS Sans Serif',8,,FONT:bold),CENTER,SYSTEM, |
GRAY
STRING('Display Test'),AT(154,12)
STRING('"Sieve"Test'),AT(218,12,41,10)
STRING('Clarion for Windows'),AT(14,32)
STRING('.EXE Size:'),AT(102,32)
STRING('343 KB'),AT(166,32),FONT('MS Sans Serif',8,0FF0000H,FONT:bold),RIGHT
STRING('215 KB'),AT(226,32),FONT('MS Sans Serif',8,0FF0000H,FONT:bold),RIGHT
STRING('Delphi'),AT(14,55)
STRING('.EXE Size:'),AT(102,55)
STRING('308 KB'),AT(166,55),FONT('MS Sans Serif',8,0FF0000H,FONT:bold),RIGHT
STRING('227 KB'),AT(226,55),FONT('MS Sans Serif',8,0FF0000H,FONT:bold),RIGHT
STRING('Visual Basic'),AT(14,78)
STRING('.EXE Size:'),AT(102,78)
STRING('13 KB'),AT(169,78),RIGHT
STRING('7 KB'),AT(234,78),RIGHT
STRING('.DLL'),AT(114,91)
STRING('394 KB'),AT(165,91),RIGHT
STRING('394 KB'),AT(226,91),RIGHT
STRING('.VBXs'),AT(114,104)
STRING('249 KB'),AT(165,104),RIGHT
STRING('65 KB'),AT(230,104),RIGHT
LINE,AT(160,116,28,0),COLOR(00H)
LINE,AT(224,116,28,0),COLOR(00H)
STRING('656 KB'),AT(165,120),FONT('MS Sans Serif',8,0FF0000H,FONT:bold),RIGHT
STRING('466 KB'),AT(226,120),FONT('MS Sans Serif',8,0FF0000H,FONT:bold),RIGHT
STRING('PowerBuilder'),AT(18,138)
STRING('.EXE Size:'),AT(102,138)
STRING('57 KB'),AT(169,138),RIGHT
STRING('22 KB'),AT(230,138),RIGHT
STRING('.DLLs'),AT(114,150)
STRING('5,134 KB'),AT(159,150),RIGHT
STRING('5,134 KB'),AT(220,150),RIGHT
LINE,AT(154,162,34,0),COLOR(00H)
LINE,AT(218,162,34,0),COLOR(00H)
STRING('5,191 KB'),AT(159,166),FONT('MS Sans Serif',8,0FF0000H,FONT:bold),RIGHT
STRING('5,156 KB'),AT(220,166),FONT('MS Sans Serif',8,0FF0000H,FONT:bold),RIGHT
BUTTON('Close'),AT(22,170),USE(?CloseSizes)
END
CODE
OPEN(Sizes)
ACCEPT
IF ACCEPTED() = ?CloseSizes THEN RETURN.
END
RETURN